package com.quran.data.source.impl

internal class NaskhDataSource : MadaniDataSource() {
  override fun getNumberOfPages() = 612

  override fun getPageForSuraArray() = intArrayOf(
      2, 3, 51, 78, 107, 129, 152, 178, 188, 209, 222, 236, 250, 256,
      262, 268, 283, 294, 306, 313, 323, 332, 343, 351, 360, 367, 377, 386,
      397, 405, 412, 416, 419, 429, 435, 441, 446, 453, 459, 468, 478, 484,
      490, 496, 499, 503, 507, 512, 516, 519, 521, 524, 527, 529, 532, 535,
      538, 543, 546, 550, 552, 554, 555, 557, 559, 561, 563, 565, 568, 570,
      572, 574, 577, 579, 581, 583, 585, 587, 588, 590, 591, 592, 593, 595,
      596, 597, 598, 598, 599, 601, 601, 602, 603, 603, 604, 604, 605, 605,
      606, 606, 607, 607, 608, 608, 608, 609, 609, 609, 609, 610, 610, 610,
      611, 611)

  override fun getSuraForPageArray() = intArrayOf(1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
      2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
      2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
      3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
      4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
      5, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6,
      6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
      7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
      9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11,
      11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12,
      12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 15,
      15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 17,
      17, 17, 17, 17, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18,
      18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 20, 20, 20, 20, 20, 20, 20, 20, 20, 21,
      21, 21, 21, 21, 21, 21, 21, 21, 21, 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, 23,
      23, 23, 23, 23, 23, 23, 23, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 25, 25, 25,
      25, 25, 25, 25, 26, 26, 26, 26, 26, 26, 26, 26, 26, 26, 27, 27, 27, 27, 27, 27,
      27, 27, 27, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 28, 29, 29, 29, 29, 29, 29,
      29, 29, 30, 30, 30, 30, 30, 30, 30, 31, 31, 31, 32, 32, 32, 33, 33, 33, 33, 33,
      33, 33, 33, 33, 33, 34, 34, 34, 34, 34, 34, 34, 35, 35, 35, 35, 35, 35, 36, 36,
      36, 36, 36, 37, 37, 37, 37, 37, 37, 37, 38, 38, 38, 38, 38, 38, 39, 39, 39, 39,
      39, 39, 39, 39, 39, 40, 40, 40, 40, 40, 40, 40, 40, 40, 41, 41, 41, 41, 41, 41,
      42, 42, 42, 42, 42, 42, 42, 43, 43, 43, 43, 43, 43, 44, 44, 44, 45, 45, 45, 46,
      46, 46, 46, 46, 47, 47, 47, 47, 48, 48, 48, 48, 48, 49, 49, 50, 50, 50, 51, 51,
      51, 52, 52, 53, 53, 53, 54, 54, 54, 55, 55, 55, 56, 56, 56, 57, 57, 57, 57, 58,
      58, 58, 58, 59, 59, 59, 60, 60, 60, 61, 61, 62, 63, 64, 64, 65, 65, 66, 66, 67,
      67, 67, 68, 68, 68, 69, 69, 70, 70, 71, 71, 72, 72, 72, 73, 74, 74, 74, 75, 76,
      76, 76, 77, 78, 78, 79, 79, 80, 81, 82, 83, 83, 84, 85, 87, 88, 89, 90, 91, 92,
      95, 96, 98, 100, 103, 106, 109, 113, 114)

  override fun getAyahForPageArray() = intArrayOf(
      1, 1, 1, 5, 16, 24, 30, 38, 49, 58, 62, 70, 77, 84,
      89, 94, 102, 106, 113, 120, 127, 135, 142, 147, 157, 165, 173, 178,
      185, 188, 194, 198, 204, 212, 216, 220, 225, 230, 233, 236, 243, 248,
      253, 257, 260, 265, 270, 275, 282, 283, 1, 9, 16, 23, 30, 38,
      46, 54, 63, 71, 78, 84, 92, 101, 109, 116, 122, 133, 141, 148,
      154, 158, 166, 174, 181, 187, 194, 1, 6, 11, 13, 19, 24, 29,
      35, 42, 47, 55, 61, 69, 76, 81, 88, 92, 96, 102, 106, 114,
      122, 128, 135, 141, 148, 155, 163, 171, 176, 3, 6, 10, 14, 18,
      24, 32, 37, 42, 46, 51, 57, 64, 69, 76, 83, 90, 96, 104,
      109, 114, 1, 9, 19, 27, 35, 44, 52, 59, 68, 74, 82, 91,
      95, 102, 111, 119, 125, 131, 138, 143, 147, 152, 158, 1, 12, 23,
      31, 38, 44, 52, 58, 68, 74, 82, 88, 96, 105, 122, 131, 138,
      144, 150, 156, 160, 164, 171, 179, 188, 196, 1, 9, 17, 26, 34,
      41, 46, 53, 62, 70, 1, 7, 14, 21, 27, 32, 37, 42, 48,
      55, 62, 69, 73, 80, 87, 94, 100, 107, 112, 118, 123, 1, 7,
      15, 21, 26, 34, 42, 53, 62, 71, 79, 89, 98, 107, 6, 13,
      20, 29, 38, 46, 54, 63, 73, 82, 89, 98, 109, 118, 5, 15,
      23, 31, 38, 44, 53, 64, 70, 79, 87, 96, 103, 1, 6, 14,
      18, 27, 34, 42, 6, 11, 21, 27, 36, 44, 2, 19, 34, 53,
      73, 91, 7, 15, 27, 35, 43, 55, 65, 73, 80, 88, 94, 103,
      112, 119, 1, 8, 18, 30, 41, 52, 61, 70, 81, 93, 101, 1,
      12, 19, 23, 30, 39, 48, 55, 63, 75, 84, 97, 110, 12, 26,
      39, 52, 64, 76, 96, 13, 39, 52, 66, 77, 87, 98, 114, 127,
      1, 12, 25, 36, 46, 58, 73, 82, 91, 103, 2, 7, 16, 24,
      31, 38, 47, 56, 65, 73, 1, 18, 28, 43, 59, 75, 90, 105,
      1, 8, 19, 27, 32, 37, 44, 54, 59, 62, 3, 12, 21, 33,
      45, 58, 69, 5, 24, 44, 65, 92, 118, 143, 167, 190, 216, 6,
      17, 27, 40, 47, 60, 67, 80, 89, 6, 14, 21, 29, 36, 44,
      51, 60, 71, 78, 85, 6, 14, 22, 29, 37, 45, 52, 64, 6,
      16, 25, 33, 42, 50, 59, 11, 19, 28, 1, 11, 21, 1, 7,
      16, 23, 31, 36, 44, 51, 55, 63, 1, 8, 15, 23, 33, 41,
      49, 4, 12, 19, 30, 38, 44, 10, 22, 38, 53, 71, 4, 30,
      57, 83, 108, 134, 161, 4, 19, 28, 44, 63, 83, 6, 11, 22,
      32, 41, 48, 57, 68, 75, 8, 17, 26, 33, 41, 50, 59, 67,
      78, 1, 12, 21, 29, 39, 47, 1, 11, 16, 23, 32, 44, 52,
      12, 24, 36, 50, 63, 80, 5, 27, 49, 7, 18, 27, 1, 9,
      16, 23, 30, 2, 12, 19, 30, 1, 10, 16, 24, 29, 5, 12,
      1, 16, 35, 7, 31, 51, 15, 32, 1, 26, 40, 4, 25, 45,
      14, 39, 67, 17, 52, 77, 4, 11, 18, 25, 1, 7, 12, 21,
      4, 10, 17, 1, 5, 11, 5, 14, 7, 4, 1, 9, 1, 6,
      1, 7, 1, 11, 23, 7, 32, 49, 13, 35, 5, 32, 3, 19,
      2, 15, 28, 16, 1, 31, 50, 15, 1, 15, 31, 26, 1, 28,
      9, 39, 21, 8, 6, 11, 34, 22, 14, 1, 8, 10, 1, 6,
      19, 1, 18, 7, 9, 1, 1, 3, 1, 6)

  override fun getPageForJuzArray() = intArrayOf(
      2, 23, 43, 63, 83, 103, 123, 143, 163, 183,
      203, 223, 243, 263, 283, 303, 323, 343, 363, 383,
      403, 423, 443, 463, 483, 503, 523, 543, 563, 587)

  override fun getQuarterStartByPage() = intArrayOf(
      -1, -1, -1, -1, -1, 1, -1, 2, -1, 3, -1, 4, -1, -1, 5, -1, -1, 6, -1,
      7, -1, -1, 8, -1, 9, -1, 10, -1, -1, 11, -1, 12, -1, -1, 13, -1, -1,
      -1, 14, -1, 15, -1, 16, -1, 17, -1, 18, -1, -1, 19, -1, 20, -1, -1, 21,
      -1, 22, -1, -1, 23, -1, -1, 24, -1, 25, -1, -1, 26, -1, 27, -1, -1, 28,
      -1, 29, -1, -1, 30, -1, 31, -1, -1, 32, -1, 33, -1, -1, 34, -1, 35, -1,
      -1, 36, -1, 37, -1, -1, 38, -1, -1, 39, -1, 40, -1, 41, -1, 42, -1, -1,
      43, -1, -1, 44, -1, 45, -1, -1, 46, -1, 47, -1, 48, -1, -1, 49, -1, 50,
      -1, -1, 51, -1, -1, 52, -1, -1, 53, -1, 54, -1, -1, 55, -1, 56, -1, 57,
      -1, 58, -1, 59, -1, -1, 60, -1, -1, 61, -1, 62, -1, 63, -1, -1, -1, 64,
      -1, 65, -1, -1, 66, -1, -1, 67, -1, -1, 68, -1, 69, -1, 70, -1, 71, -1,
      -1, 72, -1, 73, -1, -1, 74, -1, 75, -1, -1, 76, -1, 77, -1, 78, -1, -1,
      79, -1, 80, -1, -1, 81, -1, 82, -1, -1, 83, -1, -1, 84, -1, -1, 85, -1,
      86, -1, 87, -1, -1, 88, -1, 89, -1, 90, -1, 91, -1, -1, 92, -1, 93, -1,
      -1, 94, -1, 95, -1, -1, -1, 96, -1, 97, -1, -1, 98, -1, 99, -1, -1, 100,
      -1, 101, -1, 102, -1, -1, 103, -1, 104, -1, -1, 105, -1, -1, 106, -1, -1,
      107, -1, 108, -1, -1, 109, -1, 110, -1, 111, -1, -1, 112, -1, 113, -1, 114,
      -1, -1, 115, -1, 116, -1, -1, 117, -1, -1, 118, -1, 119, -1, -1, 120, -1,
      121, -1, 122, -1, -1, 123, -1, -1, 124, -1, -1, 125, -1, 126, -1, 127, -1,
      -1, 128, -1, 129, -1, 130, -1, -1, 131, -1, 132, -1, -1, 133, -1, -1, 134,
      -1, 135, -1, -1, 136, -1, 137, -1, -1, 138, -1, -1, 139, -1, 140, -1, 141,
      -1, 142, -1, -1, 143, -1, -1, 144, -1, 145, -1, 146, -1, -1, 147, -1, 148,
      -1, -1, 149, -1, 150, -1, -1, 151, -1, 152, -1, -1, 153, -1, 154, -1, -1,
      155, -1, -1, 156, -1, 157, -1, 158, -1, -1, 159, -1, -1, 160, -1, 161, -1,
      -1, 162, -1, -1, 163, -1, -1, 164, -1, -1, 165, -1, 166, -1, 167, -1, 168,
      -1, -1, 169, 170, -1, -1, 171, -1, 172, -1, 173, -1, -1, 174, -1, -1, 175,
      -1, -1, 176, -1, 177, -1, 178, -1, -1, 179, -1, 180, -1, -1, 181, -1, 182,
      -1, -1, 183, -1, -1, 184, -1, 185, -1, -1, 186, -1, 187, -1, -1, 188, -1,
      189, -1, -1, 190, -1, 191, -1, -1, 192, -1, 193, -1, 194, -1, 195, -1, -1,
      196, -1, 197, -1, -1, 198, -1, -1, 199, -1, -1, 200, -1, 201, -1, -1, 202,
      -1, -1, 203, -1, -1, 204, -1, 205, -1, 206, -1, 207, -1, -1, 208, -1, 209,
      -1, -1, 210, -1, 211, -1, 212, -1, -1, 213, -1, 214, -1, -1, 215, -1, -1,
      216, -1, 217, -1, -1, 218, -1, -1, 219, -1, -1, 220, -1, 221, -1, -1, 222,
      -1, 223, -1, 224, -1, 225, -1, -1, 226, -1, -1, 227, -1, -1, 228, -1, -1,
      -1, 229, -1, -1, 230, -1, -1, 231, -1, -1, 232, -1, -1, 233, -1, 234, -1,
      -1, 235, -1, -1, 236, -1, -1, 237, -1, 238, -1, -1, -1, 239, -1, -1, -1,
      -1, -1)
}
